#include "stdafx.h"
#include "ckDataSource.h"

namespace ck
{

	DataSource::DataSource()
	{
		m_code = -1;
	}

	DataSource::~DataSource()
	{
	}

	ckDataSourceType DataSource::GetType()
	{
		return m_type;
	}

	z_int32	DataSource::GetCode()
	{
		return m_code;
	}

	void DataSource::SetCode(z_int32 code)
	{
		m_code = code;
	}

	void	DataSource::SetID(z_int32 id)
	{
		//m_id = o
	}

	const char* DataSource::GetName()
	{
		return m_strName.c_str();
	}

	void DataSource::SetName(const char* szName)
	{
		if (szName == NULL)
		{
			m_strName.clear();
		}
		else
		{
			m_strName = szName;
		}
	}

	void DataSource::SetPath(const char* szPath)
	{
		if (szPath)
		{
			char szTemp[_MAX_PATH];
			memset(szTemp, 0, _MAX_PATH);
			strcpy(szTemp, szPath);
			size_t len = strlen(szTemp);
			char* ptr = szTemp;
			for (size_t i=0; i<len; ptr++,i++)
			{
				if((*ptr)=='\\')
				{
					*ptr = '/';
				}
			}

			m_strPath = szTemp;

			char szName[Z_NAME_MAX];
			memset(szName, 0, Z_NAME_MAX);
			_splitpath(szPath, NULL, NULL, szName, NULL);
			m_strName = szName;
		}
		else
		{
			m_strName.clear();
			m_strPath.clear();
		}
	}

	const char* DataSource::GetPath()
	{
		return m_strPath.c_str();
	}
}

